RCS "$Id: Tokens.sig,v 1.4 1998/08/13 11:35:10 pxs Exp $";
signature TOKENS =
  sig
    datatype token = Lbrack  | Rbrack  | Lsq   | Rsq
    | Lset    | Rset    | SPlus | Plus
    | VBar    | Merge   | Rest  | Repl
    | Equals  | Point   | Comma | Colon | Semicolon
    | Bottomt | Deltat  | Nilt  | Eos
    | Vart of string
    | Actt of string | Prefixt of string * string option | Timet of int
    | Stringt of string
(* logic stuff: *)
    | Truet | Falset | Nott | Andt | Impt | Dash
    | LLsq | RRsq | Langle | Rangle | LLangle | RRangle
    | Maxt | Mint

(* basic version, will give (ROUGHLY!) what user typed originally *)
    val tokstr : token -> string
(* a version with info about what the token has been lexed as, mostly *)
(* for debugging. *)
    val tokstrExtra : token -> string
  end
